Android Project Configuration

API Level

EasyAR Sense need to work with Android API Level 17 or higher. Set it in Player Settings

../_images/image_6.png

Package Name

Set Android Package Name in Player Settings. Package Name should be same with the one when creating License Key

../_images/image_7.png

Target Architecture

You need to choose IL2CPP to compile and choose ARM64 support in Player Settings if arm64 support is desired. It is not required if arm64 architecture is not to support.

../_images/image_58.png

EasyAR Sense do not support Android system in x86 directly. But generally, x86 chips are compatible to run arm applications. So you need to cancel x86 selection, to make sure the project can run on some x86 devices like EPSON BT-350. Set it in Player Settings. It is not required if x86 device is not to support.

../_images/image_59.png

Permissions Configuration

You can check permissions used by EasyAR, make sure to turn permissions on for the features you are using. These options are used to set all necessary permission strings in AndroidManifest directly.

../_images/image_g4_3.png
  • Camera Device: Permission required for CameraDevice and other frame sources which require camera device usages. Turn on this option will use Camera permission on device.

  • Video Recording: Permission required for VideoRecorder. Turn on this option will use Microphone permission on device.

  • Cloud Spatial Map: Permission required for CloudSpatialMapLocalizerFrameFilter. Turn on this option will use fine Location permission on device (ONLY when com.easyar.spatialmap package exist).

ARCore Support

EasyAR Sense support ARCore 1.6 and above in current releases. There is no special configuration required to support ARCore in EasyAR Sense Unity Plugin, the libraries and settings are already there. It is still required to install Google Play Services for AR on the device though.

Choosing ARCore SDK

You can change ARCore SDK option according to how you use ARCore.

  • AR Foundation Or Optional: Either ARCore SDK distributed with EasyAR or AR Foundation will be included in the build according to the settings of ARCore XR Plugin. This option is suggested for most cases, it will handle AR Foundation automatically.

  • Optional: ARCore features are activated only on ARCore supported devices that have Google Play Services for AR installed.

  • Required: Your app will require an ARCore Supported Device that has Google Play Services for AR installed on it.

  • External: Use this option if you are using AR Foundation or other ARCore SDK distributions, so that ARCore SDK distributed with EasyAR will not be used. You can also use this option to fully exclude ARCore SDK to be included in you app.

You can read Google’s instructions for more details and configurations required for your app.

NOTICE: EasyAR’s ARCore wrapper using ARCore SDK distributed with EasyAR does NOT require GLES3, in opposite to ARCore XR Plugin used by AR Foundation. But we are not exporting rich features from ARCore. If you desire to use features like plane detection when using ARCore, it is still suggested to use AR Foundation.

NOTICE: If ARCore is in use, you must use IL2CPP and include arm64-v8a in build. The ARCore will not work correctly on arm64 devices with armv7 only build.

../_images/image_g4_1.png

Unity 2019.4 and Android 11

Turn on ARCore For Android 11 if you are building with Android SDK Platform >= 30 and need ARCore to work. Projects built with Unity 2019.4 must be updated to use Gradle 5.6.4 or later. Please refer to Google’s instructions for updating your project’s Gradle version.

../_images/image_g4_2.png

In Unity 2020.1 and later, the option is always on.

Special Configurations for Video Recording

If you need to use video recording feature, set Graphics API to OpenGL ES 2.0 or 3.0, and cancel Multithreaded Rendering

../_images/image_14.png

And set Android API Level to be 18 or higher,

../_images/image_6.png